abstract interpretations